Method and apparatus for efficient use of communication resources in a data communication system under overload conditions

ABSTRACT

In a communication system ( 1400 ) for communication of data, a method and apparatus provide for detecting a request for opening a connection for a user ( 1407 ) for communication of data, selecting an open connection, releasing the selected open connection, and allocating, to the user ( 1407 ), communication resources corresponding to resources released based on releasing the selected open connection. In accordance with an embodiment, the selected open connection is in an idle open state.

BACKGROUND

[0001] I. Field of the Invention

[0002] The disclosed embodiments relate to the field of data communications. More particularly, the disclosed embodiments relate to a novel method and apparatus for efficient use of the communication resources in a data communication system under overload condition.

[0003] II. Background

[0004] A communication system for communication of data may reach its capacity due to many different factors. The communication system may have an access network, a packet switched data network, and a number of access terminals. The access terminal and the access network, while complying with a number of communication protocols, establish and maintain a connection for communication of data. The connection between the access terminal and the access network may be over a wireless link. The flow of data may be from access terminal to access network, or from access network to access terminal, prefer to have a connection with slow data flow rather than no connection at all.

[0005] Generally, to this end and as well as others, there exists a need in the art for an efficient use of communication resources in a communication system under overload condition, which allows the users to access the network even though the use of the communication resources has reached a congested level.

SUMMARY

[0006] In a communication system for communication of data, a method and apparatus provides for detecting an overload condition and a request for opening a connection for a user for communication of data, selecting an open connection, releasing the selected open connection, and allocating, to the user, communication resources corresponding to resources released based on releasing the selected open connection.

BRIEF DESCRIPTION OF THE DRAWINGS

[0007] The features, objects, and advantages of the present invention will become more apparent from the detailed description set forth below when taken in conjunction with the drawings in which like reference characters identify correspondingly throughout and wherein:

[0008]FIG. 11 illustrates a flow chart for use by a resource manager for efficient resource management under an overload condition;

[0009]FIG. 12 depicts a flow chart for allocating communication resources to a user when there are no free resources available; and

[0010]FIG. 13 depicts a block diagram of a controller for controlling and managing connections in an access network.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

[0011] A novel and improved method and apparatus for efficient use of communication resources under an overload condition is described. One or more exemplary embodiments described herein are set forth in the context of a digital wireless data communication system. While use within this context is advantageous, different embodiments of the invention may be incorporated in different environments or configurations. In general, the various systems described herein may be formed using software-controlled processors, integrated circuits, or discrete logic. The data, instructions, commands, information, signals, symbols, and chips that may be referenced throughout the application are advantageously represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or 

1. In a communication system for communication of data, a method comprising: detecting a request for opening a connection for a user for communication of data; selecting an open connection; releasing said selected open connection; allocating, to said user, communication resources corresponding to resources released based on said releasing said selected open connection.
 2. The method as recited in claim 1 wherein said selected open connection is in an idle open state.
 3. The method as recited in claim 1 wherein said selected open connection is in a busy open state.
 4. The method as recited in claim 1 further comprising: determining whether an open connection is in an idle open state in said communication system; wherein said selected open connection is said determined open connection in said idle open state.
 5. The method as recited in claim 1 further comprising: determining whether two or more open connections are in an idle open state; determining an open connection, from said two or more open connections in said idle open state, with a longest idle open state connection time; wherein said selected open connection is said determined open connection with said longest idle open state connection.
 6. The method as recited in claim 1 further comprising: determining whether two or more open connections are in an idle open state; determining an open connection, from said two or more open connections in said idle open state, used to transfer a predetermined amount of data in a predetermined period of time; wherein said selected open connection is said determined open connection used to transfer said predetermined amount of data in said predetermined period of time.
 7. The method as recited in claim 6 wherein said predetermined amount of data is a largest amount of data transferred by a user of users of said two or more open connections in said idle open state.
 8. The method as recited in claim 1 further comprising: determining whether two or more open connections are in an idle open state; determining an open connection, from said two or more open connections in said idle open state, used to transfer data at a predetermined data rate in a predetermined period of time; wherein said selected open connection is said determined open connection used to transfer data at said predetermined data rate in said predetermined period of time.
 9. The method as recited in claim 8 wherein said predetermined data rate is a highest data rate used by a user of users of said two or more open connections in said idle open state.
 10. The method as recited in claim 8 wherein said predetermined period is a period before a user of users of said two or more open connections in said idle open state moves to said idle open state.
 11. The method as recited in claim 1 further comprising: determining whether two or more open connections are in an idle open state, wherein said selecting is based on a random selection from said two or more open connections in said idle open state.
 12. The method as recited in claim 1 further comprising: determining whether two or more open connections are in an idle open state, determining an open connection from said two or more open connections in said idle open state with a longest combined idle open state connection time and busy open state connection time; wherein said selected open connection is said determined open connection with said longest combined idle open state connection time and busy open state connection time.
 13. The method as recited in claim 1 further comprising: determining whether an open connection is in a busy open state and no open connection is in an idle open state; wherein said selected open connection is said open connection in said busy open state.
 14. The method as recited in claim 1 further comprising: determining whether two or more open connections are in a busy open state and no open connection is in an idle open state; determining an open connection from said two or more open connections with a longest busy open state connection time; wherein said selected open connection is said determined connection from said two or more open connections with said longest busy open state connection time.
 15. The method as recited in claim 1 further comprising: determining whether two or more open connections are in a busy open state and no open connection is in an idle open state; determining an open connection from said two or more open connections used to transfer a predetermined amount of data in a predetermined period of time; wherein said selected open connection is said determined open connection used to transfer said predetermined amount of data in said predetermined period of time.
 16. The method as recited in claim 15 wherein said predetermined amount of data is a largest amount of data transferred by a user of users of said two or more open connections in said busy open state.
 17. The method as recited in claim 15 wherein said predetermined period is a period after a user of users of said two or more open connections in said busy open state move to said busy open state.
 18. The method as recited in claim 15 wherein said predetermined period of time is a period of time immediately preceding said determining said open connection from said two or more open connections used to transfer said predetermined amount of data in said predetermined period of time.
 19. The method as recited in claim 1 further comprising: determining whether two or more open connections are in a busy open state and no open connection is in an idle open state; determining an open connection from said two or more open connections in said busy open state used to transfer data at a predetermined data rate in a predetermined period of time; wherein said selected open connection is said determined open connection used to transfer data at said predetermined data rate in said predetermined period of time.
 20. The method as recited in claim 19 wherein said predetermined data rate is a highest data rate used by a user of users of said two or more open connections in said busy open state.
 21. The method as recited in claim 19 wherein said predetermined period of time is a period of time immediately preceding said determining said open connection from said two or more open connections in said busy open state used to transfer data at said predetermined data rate in said predetermined period of time.
 22. The method as recited in claim 1 further comprising: determining whether two or more open connections are in a busy open state and no open connection is in an idle open state; determining an open connection from said two or more open connections with a longest combined idle open state connection time and busy open state connection time; wherein said selected open connection is said determined connection with said longest combined idle open state connection time and busy open state connection time.
 23. The method as recited in claim 1 further comprising: determining at least an open connection in a busy open state and at least an open connection in an idle open state in said communication system; wherein said selected open connection is one of said least open connections.
 24. The method as recited in claim 23 wherein said least open connections include two or more open connections in said busy open state and two or more open connections in said idle open state, further comprising:
 27. The method as recited in claim 26 wherein said predetermined amount of data is a largest amount of data transferred by a user of users of said two or more open connections in said busy open state and said idle open state.
 28. The method as recited in claim 26 wherein said period of time is a period of time immediately preceding said determining said open connection from said two or more open connections used to transfer said predetermined amount of data in said predetermined period of time.
 29. The method as recited in claim 23 wherein said least open connections include two or more open connections in said busy open state and two or more open connections in said idle open state, further comprising: determining an open connection from said two or more open connections used to transfer data at a predetermined data rate in a predetermined period of time; wherein said selected open connection is said determined open connection from said two or more open connections used to transfer data at said predetermined data rate in said predetermined period of time.
 30. The method as recited in claim 29 wherein said predetermined data rate is a highest data rate used by a user of users of said two or more open connections.
 31. The method as recited in claim 29 wherein said predetermined period of time is a period of time immediately preceding said determining said open connection from said two or more open connections used to transfer data at said predetermined data rate in said predetermined period of time.
 32. The method as recited in claim 23 wherein said least open connections include two or more open connections in said busy open state and two or more open connections in said idle open state, further comprising: determining an open connection from said two or more open connections with a longest combined idle open state connection time and busy open state connection time; wherein said selected open connection is said determined connection with said longest combined idle open state connection time and busy open state connection time.
 33. The method as recited in claim 1 further comprising the step of: detecting an overload condition in said communication system.
 34. The method as recited in claim 33 wherein said detecting includes: detecting a predetermined number of existing connections; wherein said overload condition is based on said number of existing connections.
 35. The method as recited in claim 33 wherein said detecting includes: monitoring utilization and activity of a reverse link; wherein said overload condition is based on a level of said utilization and activity.
 36. In a communication system for communication of data, a method comprising: detecting an overload condition in said communication system; selecting an open connection; releasing said selected open connection based on said overload condition.
 37. The method as recited in claim 36 further comprising: detecting a request for opening a connection for a user for communication of data; allocating, to said user, communication resources corresponding to resources released based on said releasing said selected open connection.
 38. The method as recited in claim 36 further comprising: detecting a predetermined number of existing connections; wherein said overload condition is based on said number of existing connections.
 39. The method as recited in claim 36 wherein said selected open connection is in an idle open state.
 40. The method as recited in claim 36 wherein said selected open connection is in a busy open state.
 41. In a communication system, an apparatus comprising: a resource manager for managing a plurality of resources in said communication system; a plurality of connection controllers in communication with said resource manager for making requests for allocating communication resources to a connection; wherein said resource manager is configured to select one of said plurality of resources, to detect a request for opening a connection for a user for communication of data, and to release said selected open connection for allocating, to said user, communication resources corresponding to resources released based on said release of said selected open connection.
 42. The apparatus as recited in claim 41 wherein said selected open connection is in an idle open state.
 43. The apparatus as recited in claim 41 wherein said selected open connection is in a busy open state.
 44. In a communication system for communication of data, a method comprising: detecting a request for opening a connection for a user for communication of data; determining whether an open connection is in an idle open state in said communication system; selecting said idle open state connection; releasing said selected idle open state connection; allocating, to said user, communication resources corresponding to resources released based on said releasing.
 45. In a communication system for communication of data, a method comprising: detecting a request for opening a connection for a user for communication of data; open connection is said determined open connection with said longest idle open state connection.
 50. The method as recited in claim 45 further comprising: determining whether two or more open connections are in an idle open state; determining an open connection, from said two or more open connections in said idle open state, used to transfer a predetermined amount of data in a predetermined period of time; wherein said selected open connection is said determined open connection used to transfer said predetermined amount of data in said predetermined period of time. 